Skip to content

合并 Robocup-SSL/ssl-game-controller 到 lkhcode/ssl-game-controller - #2

Merged
lkhcode merged 44 commits into
masterfrom
pr/lkhcode/1
Jun 3, 2026
Merged

合并 Robocup-SSL/ssl-game-controller 到 lkhcode/ssl-game-controller#2
lkhcode merged 44 commits into
masterfrom
pr/lkhcode/1

Conversation

@lkhcode

@lkhcode lkhcode commented Jun 3, 2026

Copy link
Copy Markdown
Owner

No description provided.

renovate Bot and others added 30 commits March 9, 2026 02:16
---------

Co-authored-by: Nicolai Ommer <nicolai.ommer@gmail.com>
Added Robocup Junior SSL Team for the upcoming world open
@lkhcode
lkhcode marked this pull request as ready for review June 3, 2026 02:49
Copilot AI review requested due to automatic review settings June 3, 2026 02:49
@lkhcode
lkhcode merged commit 744ed5d into master Jun 3, 2026
1 check passed
@lkhcode
lkhcode deleted the pr/lkhcode/1 branch June 3, 2026 02:50

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR appears to merge upstream changes into lkhcode/ssl-game-controller, updating protobuf definitions and regenerating bindings, adding a new “continue action” to correct ball-left-field team attribution, and updating dependency/container/CI versions across the stack.

Changes:

  • Add ContinueAction_CORRECT_BALL_LEFT_FIELD_TEAM and implement backend logic to surface/perform a correction action for ball-left-field events.
  • Adjust robot counting logic to exclude a goal-side substitution zone and use it in engine and remote control reporting.
  • Refresh generated protobuf outputs, frontend UI tweaks (protocol item truncation), and bump Go/Node dependencies plus container/CI image digests.

Reviewed changes

Copilot reviewed 19 out of 23 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
proto/vision/ssl_vision_detection.proto Formatting/whitespace normalization in vision detection proto messages.
proto/engine/ssl_gc_engine.proto Adds new continue action enum value CORRECT_BALL_LEFT_FIELD_TEAM.
internal/app/statemachine/change_switchcolors.go Extends color-switch behavior to also swap command team fields (but currently misses game-state team).
internal/app/statemachine/change_acceptproposal.go Improves proposal merge logic for goal events by merging additional goal fields.
internal/app/rcon/server_remotecontrol.go Uses substitution-zone-excluding robot count for remote control state reporting.
internal/app/engine/ssl_gc_engine.pb.go Regenerated Go protobuf output reflecting the new continue action enum value.
internal/app/engine/process_continue_perform.go Implements execution of the new correction continue action by emitting a corrected game event.
internal/app/engine/process_continue_next_command.go Uses substitution-zone-excluding robot count for “too many robots” checks.
internal/app/engine/process_continue_next_action.go Surfaces the new correction action when exactly one ball-left-field event exists.
internal/app/engine/process_botremoved.go Uses GameState.IsRunning() helper instead of direct enum comparison.
internal/app/engine/common.go Updates substitution-zone logic and exposes NumTeamRobotsExcludingSubstitutionZone.
go.sum Updates module checksums for bumped Go dependencies.
go.mod Bumps ssl-go-tools, x/net, and x/sys.
frontend/src/proto/engine/ssl_gc_engine_pb.ts Regenerated TS protobuf output to include the new continue action enum value.
frontend/src/helpers/texts.ts Updates continue action labels (but missing label for the new continue action).
frontend/src/components/protocol/ProtocolItem.vue Adds CSS/classes to enable ellipsis truncation in protocol list titles.
frontend/package.json Bumps frontend dev dependencies (notably ESLint and Vue tsconfig).
frontend/package-lock.json Lockfile updates corresponding to the dependency bumps.
docker-compose.yaml Updates referenced images/tags/digests for related services.
cmd/ssl-team-client/Dockerfile Updates base image digests.
cmd/ssl-ref-client/Dockerfile Updates base image digests.
cmd/ssl-game-controller/Dockerfile Updates node/go/alpine image digests for build/runtime stages.
.circleci/config.yml Updates CircleCI base image digests/tags (Node, Go, base).
Files not reviewed (2)
  • frontend/package-lock.json: Language not supported
  • internal/app/engine/ssl_gc_engine.pb.go: Language not supported

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines +13 to +19
// 'NextCommand' and 'Command' are bound to the team, not the color, so we have to also switch these
if newState.NextCommand != nil && newState.NextCommand.ForTeam != nil {
*newState.NextCommand.ForTeam = newState.NextCommand.ForTeam.Opposite()
}
if newState.Command != nil && newState.Command.ForTeam != nil {
*newState.Command.ForTeam = newState.Command.ForTeam.Opposite()
}
Comment on lines 189 to 193
case 'CHALLENGE_ACCEPT':
return 'Accept Challenge 接受异议'
case 'CHALLENGE_REJECT':
return 'Reject Challenge 反对异议'
return 'Reject Challenge'
case 'TYPE_UNKNOWN':
Comment on lines +168 to +172
func mergeGoal(target *state.GameEvent_Goal, goals []*state.GameEvent_Goal) {
var maxBallHeight []*float32
var numRobotsByTeam []*uint32
for _, g := range goals {
maxBallHeight = append(maxBallHeight, g.MaxBallHeight)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants